Problem 1

1… 10

11

11.a A movie should appear in the dataset at least 18 times. Each has a record for the weekend (Friday, Saturday and Sunday) from the opening weekend to at least 6 weekends later (for the ones kept). The ones dropped were not in theaters for more than 6 weekends.

11.b

#keeping films that aren't dropped
films_used <- films |> 
  filter(dropped != 1)

11.c

# day when 12 Rounds came in
round_12_date <- as.Date("2009-03-27")

# Define the number of days to add
days_before <- 17984 #number under 12 Rounds "date" column

# Days prior to the 
reference_date <- round_12_date - days_before

# Print the new date
print(reference_date)
## [1] "1959-12-31"

11.d

films_used_d <- films_used |> 
  mutate(movie_date = as.Date(reference_date + date)) |> 
  #putting the release_date in the 4th column
  select(title, production_budget, release_yr,
         movie_date, sat_date, everything())

films_used_d[, c("title", "movie_date")]

11.e

#first using sat_date to get the date for each saturday
films_used_date <- films_used_d |>
  #getting the day for saturday
  mutate(sat_day = reference_date + sat_date) |>
  #sanity check... check for days that aren't Sat...It's all friday actually
  mutate(sat_day_of_week = wday(sat_day, label = TRUE)) |>
  mutate(
    fri_dummy = ifelse(movie_date == sat_day, 1, 0),
    sat_dummy = ifelse(movie_date == sat_day + 1, 1, 0),
    #reasoning... there was no movie released on Sunday....
    thu_dummy = ifelse(movie_date == sat_day - 1, 1, 0) 
  ) |>
  #renaming it friday since its dates are fridays
  rename(fri_day = sat_day) |> 
  mutate(sat_day = fri_day + 1) #making a saturday variable

films_used_date[, c("title", "movie_date","fri_day"
                    ,"fri_dummy", "sat_dummy", "thu_dummy")]

11.f

#creating dummies for week using fastDummies
films_used_date <- films_used_date |>  
  arrange(title, fri_day) |> 
  group_by(title) |> 
  # Assign numeric labels to unique elements of sat_date within each title
  mutate(week = as.integer(factor(sat_date)))


#Now using fast dummies...
films_used_date <- dummy_cols(films_used_date, select_columns = 'week')
films_used_date[, c("title", "movie_date" ,"week_1", "week_2", "week_3")]

11.g

#using the "Fast Dummies" library... to automatically create dummies for year
film <- dummy_cols(films_used_date, select_columns = 'release_yr')

film[, c("title", "release_yr", "release_yr_2009", "release_yr_2010")]

11.h

#combine the weekends 
temp <- film |> 
 mutate(weekend = case_when(
   sat_dummy == 1 ~ "Saturday",
   fri_dummy == 1 ~ "Friday",
   thu_dummy == 1 ~ "Thursday"
 )) |> 
  group_by(week, weekend) |> 
  summarize(mean = mean(tickets, na.rm = TRUE))

temp |> 
  ggplot(aes(x = week, y = mean, color = as.factor(weekend))) +
  geom_point() +
  geom_line() +
  scale_color_manual(values = c("Saturday" = "#4682B4", 
                               "Friday" = "red", 
                               "Thursday" = "#8B008B")) +
  labs(color = "Weekend",
       y = "Tickets",
       x = "Week") +
  scale_x_continuous(breaks = scales::pretty_breaks(n = 6)) +  # Set x-axis ticks
  scale_y_continuous(breaks = scales::pretty_breaks(n = 6)) +  # Set y-axis ticks
  theme_bw()

12

NOT NEEDED

13

#subset colnames that have the hh in them
holiday <- str_subset(colnames(film), "hh")

#make the things in holiday "add"
holiday_dummy <- str_c(holiday, collapse = " + ")

#day of the week dummies
weekend_dummy <- str_c(str_subset(colnames(film), "dummy"), collapse = " + ")

#week of the year dummies
week_dummy <- str_c(str_subset(colnames(film), "week_"), collapse = " + ")

#year of the week dummy
year_dummy <- str_c(str_subset(colnames(film), "release_yr_"), collapse = " + ")

#combine
mod1 <- glue("tickets ~ {weekend_dummy} + {week_dummy} + {year_dummy} + {holiday_dummy}")

#fit a regression model
reg_mod1 <- lm(as.formula(mod1), data = film)


film <- film |> 
  mutate(pred_tickets = predict(reg_mod1, film)) |> 
  mutate(abnormal_viewership = tickets - pred_tickets)

film[, c("tickets","pred_tickets", "abnormal_viewership", "fri_day")]

14

weather <- read_dta("data/weather_collapsed_all.dta")

#adding www to the column names
original_cols <- colnames(weather) 

# adding prefix using the paste 
colnames(weather) <- paste("www", original_cols, sep = "_") 

weather
weather_film <- film |> 
  left_join(weather,
            #combine on dates, automatically filters out dates that don't match
            by = c("movie_date" = "www_sat_date"))

weather_film |> 
  select(contains('movie_date'), contains("www"))

15

# Select columns with names containing "www_"
www_columns <- str_subset(colnames(weather_film), "www_")

# Create a copy of the original dataframe
df <- weather_film 

# Define regression formula with dummy variables
regressors <-  glue("~ {weekend_dummy} + {week_dummy} + {year_dummy} + {holiday_dummy}")

# Iterate over columns with names containing "www_"
for (columns in www_columns) {
  # Construct regression formula
  model <- paste(columns, regressors)
  
  # Generate names for predicted values and residuals
  pred_name <- paste("pred", columns, sep = "_")
  resid_name <- paste("resid", columns, sep = "_")
  
  # Add predicted values and residuals to the dataframe
  df <- df |> 
      mutate(!!pred_name := predict(lm(as.formula(model), data = df), df)) |> 
    #residuals = column - predicted_value_for_column
      mutate(!!resid_name := eval(parse(text = columns)) - eval(parse(text = pred_name)))
}

#remove the predicted and original values, keeping only the residuals
new_weather <- df |> 
  select(-c(contains("pred_www"), starts_with("www")))

16

#combine
#fit a regression model
week_2_data <- new_weather |> 
  filter(week_2 == 1)

#using the same regression 
reg_mod2 <- lm(as.formula(mod1), data = week_2_data)


new_weather_film <- new_weather |> 
  mutate(pred_tickets_wk_2 = predict(reg_mod2, new_weather)) |> 
  mutate(abnormal_viewership_wk_2 = tickets - pred_tickets_wk_2)


new_weather_film[, c("tickets", "pred_tickets_wk_2", "week_2", "abnormal_viewership_wk_2")]

17

#Mak
#subsetting the data to just be week 1
week_1_data <- new_weather_film |> 
  filter(week_1 == 1)

#creating the "abnormal viewerships in week 1"------------
mod1 <- glue("tickets ~ {weekend_dummy} + {week_dummy} + {year_dummy} + {holiday_dummy}")

#fit a regression model
reg_mod1 <- lm(as.formula(mod1), data = week_1_data)

www_film_ab <- new_weather_film |> 
  mutate(pred_tickets_wk_1 = predict(reg_mod1, new_weather_film)) |> 
  mutate(abnormal_viewership_wk1 = tickets - pred_tickets_wk_1)
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_tickets_wk_1 = predict(reg_mod1, new_weather_film)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases

17.a OLS;

www_columns <- str_subset(colnames(weather_film), "www_")


# Create a copy of the original dataframe
df <- weather_film 

# Define regression formula with dummy variables
regressors <-  glue("~ {weekend_dummy} + {week_dummy} + {year_dummy} + {holiday_dummy}")

# Iterate over columns with names containing "www_"
for (columns in www_columns) {
  # Construct regression formula
  model <- paste(columns, regressors)
  
  # Generate names for predicted values and residuals
  pred_name <- paste("pred", columns, sep = "_")
  resid_name <- paste("resid", columns, sep = "_")
  
  # Add predicted values and residuals to the dataframe
  df <- df |> 
      mutate(!!pred_name := predict(lm(as.formula(model), data = df), df)) |> 
    #residuals = column - predicted_value_for_column
      mutate(!!resid_name := eval(parse(text = columns)) - eval(parse(text = pred_name)))
}
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_snow_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_rain_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_10_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_15_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_20_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_25_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_30_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_35_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_40_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_45_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_50_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_55_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_60_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_65_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_70_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_75_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_80_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_85_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_90_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_95_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_0_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_1_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_2_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_3_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_4_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_5_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_0_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_1_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_2_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_3_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_4_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_5_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_6_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_7_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_8_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat_la_0 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat_la_cens_0 = predict(lm(as.formula(model), data =
##   df), df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_snow_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_rain_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_10_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_15_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_20_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_25_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_30_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_35_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_40_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_45_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_50_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_55_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_60_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_65_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_70_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_75_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_80_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_85_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_90_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_95_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_0_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_1_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_2_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_3_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_4_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_5_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_0_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_1_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_2_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_3_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_4_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_5_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_6_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_7_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_8_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat_la_5 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat_la_cens_5 = predict(lm(as.formula(model), data =
##   df), df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_snow_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_rain_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_10_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_15_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_20_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_25_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_30_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_35_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_40_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_45_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_50_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_55_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_60_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_65_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_70_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_75_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_80_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_85_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_90_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat5_95_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_0_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_1_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_2_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_3_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_4_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_prec_5_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_0_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_1_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_2_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_3_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_4_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_5_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_6_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_7_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_cloud_8_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat_la_6 = predict(lm(as.formula(model), data = df),
##   df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `pred_www_mat_la_cens_6 = predict(lm(as.formula(model), data =
##   df), df)`.
## Caused by warning in `predict.lm()`:
## ! prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases

21

#movies <- read_csv("data/movie_lens_20m/movie.csv")
#ratings <- read_csv("data/movie_lens_20m/rating.csv")